package com.animerank.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.animerank.entity.UserActivity;

import java.util.List;

/**
 * 用户活动记录Service接口
 */
public interface IUserActivityService extends IService<UserActivity> {
    
    /**
     * 记录用户活动
     * @param userId 用户ID
     * @param activityType 活动类型
     * @param animeId 动漫ID
     * @param animeTitle 动漫标题
     * @param ipAddress IP地址
     */
    void recordActivity(Long userId, String activityType, Long animeId, String animeTitle, String ipAddress);
    
    /**
     * 获取用户的最新活动记录（支持分页）
     * @param userId 用户ID
     * @param page 页码
     * @param pageSize 每页数量
     * @return 活动记录列表
     */
    List<UserActivity> getLatestUserActivities(Long userId, Integer page, Integer pageSize);
    
    /**
     * 获取用户活动记录总数
     * @param userId 用户ID
     * @return 活动记录总数
     */
    int getUserActivityCount(Long userId);
}